; cache mouse button
800237a0 : 9042F95B  LBU     80040000 (v0), f95b (80040000 (v0)) [8003f95b]
800237a4 : 00000000  NOP    
800237a8 : 00021027  NOR     000000fc (v0), 00000000 (r0), 000000fc (v0),
800237ac : 3042000C  ANDI    ffffff03 (v0), ffffff03 (v0), 000c (12),
800237b0 : A0820001  SB      00000000 (v0), 0001 (80062a40 (a0)) [80062a41]


; mouse cache --> 62208
80047604 : 90632A41  LBU     80060000 (v1), 2a41 (80060000 (v1)) [80062a41]
80047608 : 00000000  NOP    
8004760c : 00031C00  SLL     00000000 (v1), 00000000 (v1), 10 (16),
80047610 : 3C018006  LUI     8003f968 (at), 8006 (32774),
80047614 : AC232208  SW      00000000 (v1), 2208 (80060000 (at)) [80062208]







80048450 : 10400046  BEQ     00000000 (v0), 00000000 (r0), 8004856c,
80048454 : 00000000  NOP    


; D-pad
8004856c : 3C088006  LUI     000020d4 (t0), 8006 (32774),
80048570 : 95082A4E  LHU     80060000 (t0), 2a4e (80060000 (t0)) [80062a4e]
80048574 : 3C018006  LUI     80060000 (at), 8006 (32774),
80048578 : A0202A55  SB      00000000 (r0), 2a55 (80060000 (at)) [80062a55]
8004857c : 3106F000  ANDI    00000000 (a2), 00000000 (t0), f000 (61440),
80048580 : 10C000C0  BEQ     00000000 (a2), 00000000 (r0), 80048884,
80048584 : 00000000  NOP    


????
80048588 : 3C028006  LUI     00002000 (v0), 8006 (32774),
8004858c : 8C422A6C  LW      80060000 (v0), 2a6c (80060000 (v0)) [80062a6c]
80048590 : 00000000  NOP    
80048594 : 1446000C  BNE     ffffffff (v0), 00002000 (a2), 800485c8,
80048598 : 34030001  ORI     ffff2000 (v1), 00000000 (r0), 0001 (1),
800485c8 : 3C028006  LUI     ffffffff (v0), 8006 (32774),
800485cc : 8C422A70  LW      80060000 (v0), 2a70 (80060000 (v0)) [80062a70]
800485d0 : 3C018006  LUI     80060000 (at), 8006 (32774),
800485d4 : A0232A54  SB      00000001 (v1), 2a54 (80060000 (at)) [80062a54]
800485d8 : 3C018006  LUI     80060000 (at), 8006 (32774),
800485dc : AC262A6C  SW      00002000 (a2), 2a6c (80060000 (at)) [80062a6c]
800485e0 : 24470001  ADDIU   0000000c (a3), 00000000 (v0), 0001 (1),
800485e4 : 34020002  ORI     00000000 (v0), 00000000 (r0), 0002 (2),
800485e8 : 3C018006  LUI     80060000 (at), 8006 (32774),
800485ec : AC272A70  SW      00000001 (a3), 2a70 (80060000 (at)) [80062a70]
800485f0 : 14E2001C  BNE     00000001 (a3), 00000002 (v0), 80048664,
800485f4 : 34020006  ORI     00000002 (v0), 00000000 (r0), 0006 (6),
(..)

80048664 : 14E2001C  BNE     00000001 (a3), 00000006 (v0), 800486d8,
80048668 : 31020040  ANDI    00000006 (v0), 00002000 (t0), 0040 (64),

??? reload
8004866c : 3C059249  LUI     80062a4c (a1), 9249 (37449),
80048670 : 3C028006  LUI     00000000 (v0), 8006 (32774),
80048674 : 8C42220C  LW      80060000 (v0), 220c (80060000 (v0)) [8006220c]
80048678 : 34A52493  ORI     92490000 (a1), 92490000 (a1), 2493 (9363),
8004867c : 2442FFFD  ADDIU   00000005 (v0), 00000005 (v0), fffd (65533),
80048680 : 00021840  SLL     00000001 (v1), 00000002 (v0), 01 (1),
80048684 : 00621821  ADDU    00000004 (v1), 00000004 (v1), 00000002 (v0),
80048688 : 00031B40  SLL     00000006 (v1), 00000006 (v1), 0d (13),
8004868c : 3C020001  LUI     00000002 (v0), 0001 (1),
80048690 : 00621821  ADDU    0000c000 (v1), 0000c000 (v1), 00010000 (v0),
80048694 : 00032100  SLL     00000001 (a0), 0001c000 (v1), 04 (4),
80048698 : 00832023  SUBU    001c0000 (a0), 001c0000 (a0), 0001c000 (v1),
8004869c : 00042040  SLL     001a4000 (a0), 001a4000 (a0), 01 (1),
800486a0 : 00850018  MULT    00348000 (a0), 92492493 (a1),
800486a4 : 00031040  SLL     00010000 (v0), 0001c000 (v1), 01 (1),
800486a8 : 00431021  ADDU    00038000 (v0), 00038000 (v0), 0001c000 (v1),
800486ac : 00021040  SLL     00054000 (v0), 00054000 (v0), 01 (1),
800486b0 : 3C018006  LUI     80060000 (at), 8006 (32774),
800486b4 : AC222A78  SW      000a8000 (v0), 2a78 (80060000 (at)) [80062a78]
800486b8 : 00001010  MFHI    000a8000 (v0), ffe98000 (hi),
(..)


800486d8 : 3C048006  LUI     00000001 (a0), 8006 (32774),
800486dc : 8C842A7C  LW      80060000 (a0), 2a7c (80060000 (a0)) [80062a7c]
800486e0 : 3C038006  LUI     00000001 (v1), 8006 (32774),
800486e4 : 8C632A78  LW      80060000 (v1), 2a78 (80060000 (v1)) [80062a78]
800486e8 : 10400017  BEQ     00000000 (v0), 00000000 (r0), 80048748,
800486ec : 3C059249  LUI     80062a4c (a1), 9249 (37449),


; square = fire
80048748 : 30C28000  ANDI    00000000 (v0), 00002000 (a2), 8000 (32768),
8004874c : 1040001A  BEQ     00000000 (v0), 00000000 (r0), 800487b8,
80048750 : 30C21000  ANDI    00000000 (v0), 00002000 (a2), 1000 (4096),
(..)

800487b8 : 30C22000  ANDI    00000000 (v0), 00002000 (a2), 2000 (8192),
800487bc : 10400020  BEQ     00002000 (v0), 00000000 (r0), 80048840,
800487c0 : 30C21000  ANDI    00002000 (v0), 00002000 (a2), 1000 (4096),
800487c4 : 10400008  BEQ     00000000 (v0), 00000000 (r0), 800487e8,
800487c8 : 30C24000  ANDI    00000000 (v0), 00002000 (a2), 4000 (16384),
(..)

800487e8 : 1040000D  BEQ     00000000 (v0), 00000000 (r0), 80048820,
800487ec : 00000000  NOP    
(..)




; left push = x-cursor
80048820 : 3C028006  LUI     00000000 (v0), 8006 (32774),
80048824 : 8C422A58  LW      80060000 (v0), 2a58 (80060000 (v0)) [80062a58]
80048828 : 00000000  NOP    
8004882c : 00621021  ADDU    00a00000 (v0), 00010000 (v1), 00a00000 (v0),
80048830 : 3C018006  LUI     80060000 (at), 8006 (32774),
80048834 : AC222A58  SW      00a10000 (v0), 2a58 (80060000 (at)) [80062a58]
80048838 : 08012252  J       80048948,
8004883c : 34110001  ORI     00000000 (s1), 00000000 (r0), 0001 (1),



; down push = y-cursor
80048840 : 10400005  BEQ     00000000 (v0), 00000000 (r0), 80048858,
80048844 : 00000000  NOP    
80048858 : 30C24000  ANDI    00000000 (v0), 00004000 (a2), 4000 (16384),
8004885c : 1040003A  BEQ     00004000 (v0), 00000000 (r0), 80048948,
80048860 : 34110001  ORI     00000000 (s1), 00000000 (r0), 0001 (1),
80048864 : 3C028006  LUI     00004000 (v0), 8006 (32774),
80048868 : 8C422A5C  LW      80060000 (v0), 2a5c (80060000 (v0)) [80062a5c]
8004886c : 00000000  NOP    
80048870 : 00621021  ADDU    00580000 (v0), 00010000 (v1), 00580000 (v0),
80048874 : 3C018006  LUI     80060000 (at), 8006 (32774),
80048878 : AC222A5C  SW      00590000 (v0), 2a5c (80060000 (at)) [80062a5c]
8004887c : 08012252  J       80048948,
80048880 : 34110001  ORI     00000001 (s1), 00000000 (r0), 0001 (1),




???
80048884 : 3C028006  LUI     00000000 (v0), 8006 (32774),
80048888 : 90422A54  LBU     80060000 (v0), 2a54 (80060000 (v0)) [80062a54]
8004888c : 00000000  NOP    
80048890 : 1040001E  BEQ     00000000 (v0), 00000000 (r0), 8004890c,
80048894 : 00000000  NOP    
8004890c : 3C028006  LUI     00000000 (v0), 8006 (32774),
80048910 : 8C422A74  LW      80060000 (v0), 2a74 (80060000 (v0)) [80062a74]
80048914 : 00000000  NOP    
80048918 : 2442FFFF  ADDIU   ffffff33 (v0), ffffff33 (v0), ffff (65535),
8004891c : 3C018006  LUI     80060000 (at), 8006 (32774),
80048920 : AC222A74  SW      ffffff32 (v0), 2a74 (80060000 (at)) [80062a74]
80048924 : 04410009  BGEZ    ffffff32 (v0), 8004894c,
80048928 : 31100FFF  ANDI    00000000 (s0), 00000000 (t0), 0fff (4095),
8004892c : 3C020001  LUI     ffffff32 (v0), 0001 (1),
80048930 : 3C018006  LUI     80060000 (at), 8006 (32774),
80048934 : AC222A78  SW      00010000 (v0), 2a78 (80060000 (at)) [80062a78]
80048938 : 3C018006  LUI     80060000 (at), 8006 (32774),
8004893c : AC222A7C  SW      00010000 (v0), 2a7c (80060000 (at)) [80062a7c]
80048940 : 3C018006  LUI     80060000 (at), 8006 (32774),
80048944 : AC202A70  SW      00000000 (r0), 2a70 (80060000 (at)) [80062a70]
80048948 : 31100FFF  ANDI    00000000 (s0), 00000000 (t0), 0fff (4095),




(SHARED AREA)

8004894c : 1220001E  BEQ     00000000 (s1), 00000000 (r0), 800489c8,
80048950 : 3C02000C  LUI     00010000 (v0), 000c (12),


; button area?
800489c8 : 3C038006  LUI     ffff0000 (v1), 8006 (32774),
800489cc : 8C632208  LW      80060000 (v1), 2208 (80060000 (v1)) [80062208]
800489d0 : 3C028006  LUI     000c0000 (v0), 8006 (32774),
800489d4 : 8C422A68  LW      80060000 (v0), 2a68 (80060000 (v0)) [80062a68]
800489d8 : 02038025  OR      00000000 (s0), 00000000 (s0), 00000000 (v1),
800489dc : 00021027  NOR     00000000 (v0), 00000000 (r0), 00000000 (v0),
800489e0 : 02021024  AND     ffffffff (v0), 00000000 (s0), ffffffff (v0),
800489e4 : 3C018006  LUI     80060000 (at), 8006 (32774),
800489e8 : AC302A60  SW      00000000 (s0), 2a60 (80060000 (at)) [80062a60]
800489ec : 3C018006  LUI     80060000 (at), 8006 (32774),
800489f0 : AC222A64  SW      00000000 (v0), 2a64 (80060000 (at)) [80062a64]
800489f4 : 3C018006  LUI     80060000 (at), 8006 (32774),
800489f8 : AC302A68  SW      00000000 (s0), 2a68 (80060000 (at)) [80062a68]

800489fc : 8FBF0018  LW      80048450 (ra), 0018 (801b4e14 (sp)) [801b4e2c]
80048a00 : 8FB10014  LW      00000000 (s1), 0014 (801b4e14 (sp)) [801b4e28]
80048a04 : 8FB00010  LW      00000000 (s0), 0010 (801b4e14 (sp)) [801b4e24]
80048a08 : 27BD0020  ADDIU   801b4e14 (sp), 801b4e14 (sp), 0020 (32),
80048a0c : 03E00008  JR      80049298 (ra),
80048a10 : 00000000  NOP    








80049298 : 0C012443  JAL     8004910c, 80049298 (ra),
8004929c : 00000000  NOP    
8004910c : 27BDFFE0  ADDIU   801b4e34 (sp), 801b4e34 (sp), ffe0 (65504),
80049110 : AFB00010  SW      800682a8 (s0), 0010 (801b4e14 (sp)) [801b4e24]
80049114 : 00008021  ADDU    800682a8 (s0), 00000000 (r0), 00000000 (r0),
80049118 : 3C048006  LUI     00000000 (a0), 8006 (32774),
8004911c : 24842A58  ADDIU   80060000 (a0), 80060000 (a0), 2a58 (10840),


???
80049120 : 3C068006  LUI     00000000 (a2), 8006 (32774),
80049124 : 8CC62A64  LW      80060000 (a2), 2a64 (80060000 (a2)) [80062a64]
80049128 : 3C028007  LUI     00000000 (v0), 8007 (32775),
8004912c : 8C42CECC  LW      80070000 (v0), cecc (80070000 (v0)) [8006cecc]
80049130 : AFBF001C  SW      800492a0 (ra), 001c (801b4e14 (sp)) [801b4e30]
80049134 : AFB20018  SW      0000000c (s2), 0018 (801b4e14 (sp)) [801b4e2c]
80049138 : AFB10014  SW      00000001 (s1), 0014 (801b4e14 (sp)) [801b4e28]

8004913c : 8C910000  LW      00000001 (s1), 0000 (80062a58 (a0)) [80062a58]
80049140 : 8C920004  LW      0000000c (s2), 0004 (80062a58 (a0)) [80062a5c]
80049144 : 00C21024  AND     000c00a0 (v0), 00000000 (a2), 000c00a0 (v0),
80049148 : 10400003  BEQ     00000000 (v0), 00000000 (r0), 80049158,
8004914c : 24850004  ADDIU   80062a4c (a1), 80062a58 (a0), 0004 (4),

; square = fire
80049150 : 08012469  J       800491a4,
80049154 : 34100001  ORI     00000000 (s0), 00000000 (r0), 0001 (1),






; x-cursor adjust
8004879c : 8C422A58  LW      80060000 (v0), 2a58 (80060000 (v0)) [80062a58]
800487a0 : 00000000  NOP    
800487a4 : 00431023  SUBU    00000000 (v0), 00000000 (v0), 00150000 (v1),
800487a8 : 3C018006  LUI     80060000 (at), 8006 (32774),
800487ac : AC222A58  SW      ffeb0000 (v0), 2a58 (80060000 (at)) [80062a58]
800487b0 : 08012252  J       80048948,
800487b4 : 34110001  ORI     00000000 (s1), 00000000 (r0), 0001 (1),
